package leetcode.day;

import java.util.*;

// 373. 查找和最小的K对数字
public class KSmallestPairs {

    public static void main(String[] args) {
        int[] data1 = {1, 7, 11};
        int[] data2 = {2, 4, 6};
        System.out.println(kSmallestPairs(data1, data2, 3));
    }

    public static List<List<Integer>> kSmallestPairs(int[] nums1,
                                                     int[] nums2,
                                                     int k) {
        List<List<Integer>> res = new ArrayList<>(k);
        for (int i = 0; i < Math.min(nums1.length, k); i++) {
            for (int j = 0; j < Math.min(nums2.length, k); j++) {
                res.add(Arrays.asList(nums1[i], nums2[j]));
            }
        }

        res.sort(Comparator.comparingInt(item -> item.get(0) + item.get(1)));
        System.out.println(res);
        int len = Math.min(res.size(), k);
        return res.subList(0, len);

    }
}
